Method of determining the feasibility of a proposed structure analysis process

ABSTRACT

A method of determining the feasibility of a proposed structure analysis process is disclosed. The process involved the electron beam excitation of x-rays from a multi-layered structure. The method comprises generating predicted x-ray data represents the x-ray excitation response of the multi-layered structure according to one or more sets of process conditions. The x-ray data are generated using structure data defining the structure and composition of the layers. The effects upon the x-ray data of changes to the structure data are then analysed in accordance with one or more predetermined feasibility criteria, so as to determine the feasibility of performing the proposed structure analysis process upon the multi-layered structure.

FIELD OF THE INVENTION

The present invention relates to a method of automatic optimisation of aproposed structure analysis process in which an electron beam is used toexcite x-rays from a multi-layered structure under one or more processconditions.

BACKGROUND TO THE INVENTION

One important method of analysing multiple thin layers on a substrateinvolves exposing a specimen to a beam of electrons and measuring theemitted x-ray spectrum. Provided the electron beam is sufficientlyenergetic to penetrate through the layers and reach the substrate, thencharacteristic x-rays are generated from elements in both the substrateand the various layers and these contribute to the total x-ray spectrumseen by an x-ray detector. FIG. 1 shows a typical situation where a 10keV electron beam is incident on a layered sample with three layers ofdifferent thickness on a substrate. Many electron trajectories are shownand x-rays may be generated at any point along the electron trajectoryas a result of ionisation of atoms. X-rays are emitted in all directionsand if an x-ray detector is positioned above the sample, then x-raysemitted towards the detector will provide signals representative of theelements present in the regions excited by the electron beam. In thearrangement of FIG. 1, x-rays will emerge from all three layers and thesubstrate. In FIG. 2, the same sample is exposed to a lower energyelectron beam. In this case, the electrons only penetrate to the top twolayers so there will be no signal from the lowest layer and thesubstrate. In general, if a series of x-ray spectra are acquired atdifferent incident electron beam energies, typically between 2 keV and20 keV, then the corresponding spectra will exhibit characteristic x-raypeaks that vary according to the thicknesses and the compositions of thevarious layers, and indeed the substrate. Given a particular electronbeam energy, the characteristic intensity for a particular elementwithin a multi-layered sample can be expressed as a “k-ratio”.

A “k-ratio” is the ratio of the x-ray intensity received for aparticular element from the structure (counts per second recorded from acharacteristic x-ray emission series such as K, L or M) to that obtainedfrom a flat bulk specimen of pure element under the same experimentalconditions. Taking this ratio avoids having to know the x-ray detectorcollection efficiency as a function of energy. By measuring a series ofk-ratios, it is sometimes possible to deduce the thicknesses andcompositions of the various layers in a multi-layer specimen.

If NE elements in total occur in one or more of the layers or in thesubstrate and there are NL layers with thickness T₁, T₂ . . . T_(NL),and layer L contains concentration C_(Lj) of element j, and thesubstrate contains concentration CS_(j) of element j then the predictedk-ratio for element i at incident electron beam energy E₀ can be writtenas:—

k _(i) =f _(i)(E ₀ , T ₁ , T ₂ , . . . T _(NL) , C ₁₁ , C ₁₂ , . . . C_(1 NE) , C ₂₁ , C ₂₂ . . . C _(2 NE) . . . C _(NL 1) , C _(NL 2) , . .. C _(NL NE) , C _(S1) , C _(S2) , . . . C _(S NE))  EQUATION 1

where f_(i) is a non-linear function of the layer thicknesses and thecompositions of the layers and substrate. Several equations of this formcover the measured element intensities at this one beam energy E₀. Theremay be more than one equation for a particular element if measurementsare made on more than one emission series for this element (e.g. K or Lor M emissions). Measurements may also be taken at further values of thebeam energy and in general there will be M of these non-linear equationsfor k-ratios. The function in equation 1 typically involves integrationsand non-linear functions and in general it is not possible to “invert”the set of equations and write down a formula that expresses thethickness or compositions for any one layer in terms of a set ofmeasured k-ratios. Therefore, to determine a set of thicknesses andcompositions (“layer variables”) from a set of x-ray measurements, it isknown to use a modelling approach where the parameters of the model areadjusted to find a set of k_(i) that are a “best-fit” to the measuredk-ratios (see for example, Chapter 15 in “Numerical Recipes in C”,Second Edition, W.H. Press et al, Cambridge University Press 1999).

Thus, a computer program is used to make iterative guesses at thethickness and composition of the layers to find a set that is a closefit with the k-ratios measured from x-ray spectra (see for example, J.L. Pouchou. “X-ray microanalysis of stratified specimens”, AnalyticaChimica Acta, 283 (1993), 81-97. This procedure has been made availablecommercially in the software product “Stratagem” by SAMx, France). Thecomputer program will make a test at each iteration to see if theguesses are not changing significantly between iterations, in which case“convergence” is achieved.

Unfortunately in some cases, it is impossible to find a best-fit set ofthicknesses and compositions because the measured k-ratios do not revealenough differences in intensity to resolve the source of the individualcontributions to x-ray intensity. In this case, the computer programiterations will fail to converge on a unique solution. Such problems cansometimes be resolved by choosing different x-ray emission series,different beam energies or constraining the range of possible solutionsby providing information on some of the thicknesses or compositionswhere this is known beforehand. Although there are some guidelines forthe choice of beam energies and x-ray series (see for example, J. L.Pouchou, “X-ray Microanalysis of Thin Films and Coatings”, Microchim.Acta 138, 133-152 (2002)), in general it is difficult to prove that agiven type of sample can always be analysed successfully by thistechnique except by extensive experimentation in the hands of an expert.Existing software programs (such as “Stratagem”) provide diagnostictools such as curve plots of k-ratio vs layer thickness or k-ratio vsbeam energy in order to assist the expert in making a choice of the bestconditions for analysis. However, these tools do not provide anyrecommendations for analysis, particularly for a complex multi-layeredspecimen, and are not suitable for a person that does not have a goodunderstanding of the physics involved.

The iterative procedure of the computer program begins with a set ofstarting values for the fitted parameters (that is the “unknowns”) andthe choice of starting “guesses” can affect whether the iteration willconverge to the best solution for a given set of input data. Therefore,even when suitable conditions can be defined for the measurements andsome prior knowledge is available, the procedure can still fail if thestarting guesses for the fitted parameters are not suitable.

When an energy dispersive spectrometer is used to acquire an x-rayspectrum, the digitised spectrum effectively consists of a number ofindependent channels that each record counts for a small range ofenergies. To obtain peak intensities, the spectrum is processedmathematically to remove background and correct for any peak overlap.Each channel count in the original spectrum is subject to Poissoncounting statistics and this will cause variation in the derived peakareas.

The physical theory for x-ray generation in layered specimens shows thata change in any one composition or thickness value will in generalaffect several of the observed x-ray intensities. Conversely, a changein one measured elemental intensity can influence several of the fittedparameters. In some situations, it is possible that some randomperturbation of measured intensities together with the particular set ofstarting guesses for the fitted parameters will cause the program tosometimes succeed and sometimes fail to converge to a solution. In aquality control application where repeat measurements are taken toensure thicknesses and/or compositions are within agreed tolerances, itis critical to ensure such failures are rare.

Even if convergence is always achieved, because of statistical variationeach new set of measurements on the same specimen will give rise to adifferent set of results for thicknesses and composition. Using longerx-ray measurement times will in general reduce the fluctuation inmeasured k-ratios and this will in turn reduce the variation inthickness and composition estimates obtained by iteration. However,because of the complicated and mathematically non-linear nature of theproblem, it is not possible to formulate equations to predict whatprecision can be achieved in the measured thicknesses or compositions.

A standard method to obtain estimates of reproducibility for suchnon-linear problems is to use Monte Carlo simulation (see “NumericalRecipes in C”, Second Edition, W.H. Press et al, Cambridge UniversityPress 1999, p689). In this method, a set of results is first obtainedfrom a set of input data. A set of random numbers representing theappropriate statistical distribution is added as a perturbation to theinput data and the results found by iterative solution. These resultswill be slightly different from the results without the perturbationsand the differences are recorded. This process is repeated many timeswith new sets of random numbers and the changing output results can beused to calculate the standard deviation for each result value as aconsequence of counting statistics affecting the input data. Forexample, this sensitivity analysis approach has been used in thespecialised field of x-ray fluorescence analysis where x-rays from anx-ray tube are used to excite an x-ray spectrum from the specimen (U.S.Pat. No. 6,118,844). In U.S. Pat. No. 6,118,844 individual channelcounts in the uncorrected x-ray data are subjected to counting statisticperturbations to predict the effect, after corrections for peak overlap,on the uncertainty in calculated layer thickness by the fluorescencemethod.

In the practical situation of a materials analyst being presented with anew type of thin film sample to be studied, experimental spectra usuallyhave to be acquired from a similar but known sample to find the observedx-ray intensities from the various elements. Further experiments areusually then required to decide on the best set of measurementconditions, the element series to be measured, the fixed and variableparameters and the starting values. Thus it will be appreciated that theprocedure to establish the feasibility of the electron beam analysisapproach can be extremely time consuming and expensive. Furthermore, itrequires considerable knowledge on the part of the operator There istherefore a desire to improve upon these known methods of determiningthe feasibility of performing electron beam x-ray analysis.

SUMMARY OF THE INVENTION

In accordance with the invention we provide a method of determining thefeasibility of a proposed structure analysis process, said processcomprising electron beam excitation of x-rays from a multi-layeredstructure, the method comprising:—

i) generating predicted x-ray data representing the x-ray excitationresponse of the multi-layered structure according to one or more sets ofprocess conditions, using structure data defining the structure andcomposition of the layers;

ii) analysing the effect upon the x-ray data of changes to the structuredata in accordance with one or more predetermined feasibility criteria,so as to determine the feasibility of performing the proposed structureanalysis process upon the multi-layered structure.

The invention can therefore be thought of as providing a simulation toolfor determining whether a given multi-layer structure is “soluble” (forexample in terms of determining the composition and/or thickness of eachlayer) by using an analysis technique based upon electron beamexcitation of x-rays and to find the best conditions for that analysis.Typically such a multi-layered structure comprises at least one thinlayer located upon a substrate. In principle a substrate is not requiredalthough normally this will be present. The invention may therefore beutilised in optimising the conditions for performing the analysisprocess and/or for determining the attainable precision orreproducibility in the “fitted” parameters estimated by this method.

Some layer variables will be known and fixed whereas some will beunknown and to be determined. In general it is impossible to guaranteethat the iterative solution of equation 1 is possible for any specimenand for any selection of starting values for the unknown variables.However, if typical values are provided for the unknowns, then thisprovides enough information to define a hypothetical specimen structurethat is typical of what is to be analysed. It is then possible todetermine if the problem can be solved reliably with good startingguesses for the unknown variables. If the problem cannot be solved evenwith good starting guesses, then it cannot be solved in general and newset of process conditions needs to be selected.

Typically the x-ray data are generated using a predictor model as afunction of the elemental composition and layer thickness of each layerin the multi-layered structure. Thus the predictor model may be used togenerate x-ray data representing the characteristic x-ray intensityresponse for a particular element within the multi-layered structure.X-ray data for the structure as a whole can therefore be built up inthis way by calculating the characteristic x-ray intensity response foreach element. Thus, the predictor model (“thin film model”) can alwayspredict k-ratios in the ‘forward’ direction as shown by equation 1provided thicknesses and concentrations (“layer variables”) are definedfor all layers.

In one method, in step (i) the structure data is defined as nominalstructure data in terms of compositions and layer thicknesses for eachlayer, the nominal structure data producing corresponding nominal x-raydata and wherein, in step (ii), the x-ray data is modified and input,together with the nominal structure data, into a structure solveradapted to iteratively change the composition and thickness of eachlayer of the multi-layer structure to see the effect on the predictedx-ray data and find values that match the input x-ray data and thusproduce output structure data that is consistent with the input x-raydata. As will be appreciated, in each of the methods described herein,the structure solver preferably applies equation 1 in search of asolution.

Preferably the effects of modifications to the x-ray data are thenanalysed by comparing the output structure data with the nominalstructure data in accordance with a feasibility criterion. For example,the feasibility criterion is met if, for every modification to the inputx-ray data, the structure solver produces a unique set of outputstructure data having corresponding x-ray data that is substantiallyidentical to the nominal x-ray data. By way of further explanation ofthis method, if x-ray data as k-ratios are provided as inputs to theiterative procedure and the starting values for the unknowns are set tothe values corresponding to the hypothetical specimen, then equation 1will predict k-ratios identical to the starting values and the iterationwill converge immediately. If just one of the k-ratios, K_(j), isincremented by a small amount (say 1%) and the other k-ratios areunchanged, then when the iterative solution is attempted, the k-ratioswill agree with equation 1 except for K_(j). Provided the change inK_(j) is sufficiently large, then the test for convergence will fail andthe iterative procedure will have to perform an iteration and make anadjustment to the unknown values. This will change the prediction ofk-ratios and may lead to further iterations. If the iterations fail toconverge, then the problem is clearly unstable. However, if they doconverge to a solution, then the change delta-T_(i) from the idealstarting value for each unknown layer variable T_(i) for a known changedelta-K_(j) in the jth k-ratio is recorded as dT_(i)/dK_(j). Thisprocedure is repeated for different K_(j). If convergence is achievedfor all K_(j) then this suggests that the computer program embodying themethod can deal with this problem.

If an estimate of the standard deviation, σ_(i), in the measured K_(j)is available, and the statistical fluctuations in all K_(j) areindependent, then the variance, V_(i), in the calculated layer variableT_(i) can be estimated as the sum of ((dT_(i)/dK_(j))²·σ_(i) ²) for allj. Furthermore, systematic errors can occur in measured K_(j). Forexample, if the beam current increases during the acquisition of anx-ray spectrum, then all K_(j) derived from this spectrum will beincreased in the same proportion. If an estimate of the systematicerror, e_(i), in the measure K_(j) is available, then the error in thecalculated variable T_(i) can be estimated as the sum of((dT_(i)/dK_(j)). e_(j)) for all j. A figure of merit can be computedfor each source of error. For example, in the case of statisticalerrors, the maximum relative standard deviation in T_(i), that is squareroot of (V_(i)/T_(i) ²), gives the “worst case” relative error and a lowvalue for this figure of merit would be desirable. Alternatively, theaverage relative error for all T_(i) or the relative error for aspecific layer variable can be chosen for the figure of merit. Similarfigures of merit can be computed for errors due to systematic causessuch as beam current variation.

Thus, if a typical specimen structure can be defined, then for one setof experimental conditions, in particular the beam energy, thepossibility of solving the problem can be tested and one or more figuresof merit can be computed to measure the effect of various potentialsources of error on the results. If this procedure is repeated atseveral candidate experimental conditions, then the best set ofconditions can be found that minimises the effect of one or more sourcesof error. If one source of error is likely to dominate, then theconditions that minimise the figure of merit for that error source isappropriate. Alternatively, if realistic values for, σ_(i) and e_(i) areavailable, then some combination of the related figures of merit can beused, such as the maximum of both figures of merit, to find theexperimental conditions that are optimal.

In an alternative approach, modifications of the structure data whichare input into the structure solver can be made to determine thefeasibility. In this case, in step (i) the structure data is defined asnominal structure data comprising compositions and layer thicknesses foreach layer, the nominal structure data producing corresponding nominalx-ray data and wherein, in step (ii), the structure data is modified andinput as starting guesses, together with the nominal x-ray data, into astructure solver adapted to iteratively calculate the composition andthickness of each layer of the multi-layer structure as output structuredata using these starting guesses. The structure solver may thereforecalculate x-ray data for the modified structure data and compare themodified x-ray data with the nominal x-ray data. Preferably the effectsof the modification to the structure data are analysed by comparing thex-ray data generated for the modifications in the structure data withthe nominal x-ray data and comparing the results of the comparison witha feasibility criterion. The feasibility criterion may be deemed met ifa unique set of output structure data is found which producescorresponding predicted x-ray data that is substantially identical tothe nominal x-ray data and is substantially independent of themodifications applied to the structure data.

In another alternative method, a Monte Carlo method is used whereinchanges to nominal x-ray data generated from nominal structure data areproduced by applying statistical distributions to the nominal x-ray dataso as to produce a plurality of sets of x-ray data having a collectivestatistical distribution equivalent to that expected from performing thex-ray excitation experimentally. Thus in step (ii), each set of x-raydata may be entered, together with the nominal structure data, into aniterative structure solver for generating output structure data. In thiscase the process may be deemed feasible if, for every modification tothe x-ray data the structure solver produces a unique set of outputstructure data having corresponding x-ray data that is substantiallyidentical to the nominal x-ray data. Therefore, rather than consider theeffect of small changes in each K_(i) individually, it is possible touse a “Monte Carlo” approach where the expected standard deviationsσ_(i) are used to generate a randomised set of K_(j) that are then usedas input to the iterative procedure. If the iterative procedureconverges on a solution, it will find values for the unknown layervariables that will be slightly different from the typical values usedin equation 1. By repeating this procedure many times with fresh sets ofrandom numbers, the iterative procedure will be tested many times andthe standard deviation in the determined layer variables can becalculated from the many sets of results that effectively simulate manyreal experiments.

In this procedure, it is not necessary to calculate dT_(i)/dK_(j) butdoes require much more computation to obtain estimates of the variationsin determined layer variables. Sources of variation such as beam currentcan be incorporated by using another random number to calculate thescale factor to apply to all k-ratios obtained from a particularspectrum. If at any time, the iterative procedure fails to converge,then this particular set of conditions (e.g. beam energy) is clearlyunsuitable for analysis and a new set of conditions should beinvestigated immediately.

Another alternative method of performing the invention comprises in step(i) generating one or more sets of predicted spectral data, each setrepresenting the x-ray excitation response of the structure according toa respective one of the said process conditions and x-ray data arederived from the predicted spectral data wherein step (ii) comprisescalculating output structure data for each set of process conditions,using x-ray data derived from each generated set of spectral data andnominal structure data. This method preferably uses a predictor model togenerate numerous sets of spectral data for analysis by a structuresolver.

In practice, the standard deviation in measured k-ratios will depend onthe process conditions and can be calculated from physical theory forthe typical specimen structure under consideration. Where k-ratios aredetermined from spectral data, the spectral data can be predictedaccording to a set of process conditions. Besides electron beam energy,such process conditions may include data concerning the type of physicalapparatus used and the experimental conditions used, such as for examplethe acquisition time used for obtaining the spectral data. Examples ofinformation used to predict the spectral data include the incident beamkeV, the beam current, the solid angle for collection of x-rays, thetake-off-angle for the emergent x-rays, the tilt of the specimen surfaceand spectrometer adjustable parameters (such as resolution andacquisition time). It is also necessary in this case to specify theparticular elements and line series for which the spectral data are tobe generated.

The form that the spectral data takes is also dependent upon thetechnique used to generate the spectral data. Typically it will dependupon the format required as an input for the calculations. The spectraldata may therefore comprise predicted x-ray intensity data for examplein the form of k-ratios as described earlier. In order to generate suchk-ratios the method preferably further comprises generating elementalspectral data for pure elements and using the elemental spectral data inthe generation of the x-ray data. Typically this involves dividing the“structure” x-ray data values by the elemental x-ray data values.

The “feasibility” of the structure analysis process is not limited tomean whether or not it is possible for the analysis process to arrive atthe fitted parameters at all, but also in the sense of whether thefitted parameters arrived at have a sufficient level of reproducibilityor accuracy. In making a feasibility determination it is thereforeimportant to model the x-ray emission from the multi-layered structureto a sufficient level of accuracy. Real life x-ray excitation involvesthe probabilistic effects of counting statistics. Preferably therefore,for each data set (according to the conditions selected), the methodfurther comprises running the iterative solution procedure a number oftimes, so as to simulate the effects of Poisson counting statisticswithin each data set by adding random numbers to the spectral data. Thiseffectively simulates the effect of performing a practical analysisexperiment a number of times.

Another technique that can be used to take the counting statistics intoaccount is to perform calculations so as to predict the statisticaldistribution of x-ray peak areas due to Poisson counting statistics andthen to apply the statistical distribution to the spectral data. Forexample, the effective σ_(i) for each k-ratio can be calculated and usedin the Monte Carlo approach described above, rather than simulating manyspectra with counting statistics and processing each one to obtain apeak area.

Since there are often fluctuations in the electron beam intensitygenerated by practical electron beam generation apparatus, this can betaken into account by performing the method with different sets ofprocessing conditions representing the electron beam intensityfluctuations. This can be effected for example by applying aprobabilistic distribution to a nominal electron beam intensity for eachsimulated spectrum. This can also be achieved by adding the relativevariance due to beam current fluctuations in quadrature with therelative variance due to counting statistics (as described later).

In some cases it may also be recognised that there are systematic errorswithin the processing of spectral data obtained from practicalapparatus. The present invention can also be used to monitor the effectsof such errors by modelling such systematic errors into the spectraldata. The iterative solution procedure may be repeated a number of timesin investigating the effects of these systematic errors in the spectrumprocessing upon the fitted parameters. This can also be achieved byadding the potential relative variance due to spectrum processing errorsin quadrature with the relative variance due to counting statistics.

The results of the iterative solution procedure are typically a valuefor each fitted parameter. Such a value is normally a numerical valuealthough it could also be a selection of particular data from a group ofdata. For example such data might represent further information aboutthe type of multi-layered structure. Typically each fitted parameter isa composition (such as the amount of a particular element) or a layerthickness. When multiple fitted parameters are to be determined for aspecimen, they may comprise different “types” of parameters, such as amixture of composition and thickness parameters.

Whilst various parameters may be modified in the generation of thespectral data such as the process conditions, electron beam energies andso on, it will be appreciated that the program that drives the iterativesolution procedure typically also includes a number of parameters whichmay be selected and thereby influence the feasibility of performing theanalysis process. For example the “fitted” parameters which are to bedetermined may begin as undefined values in some calculation models.However, in certain types of model, such as iterative models as anexample, typically starting values are provided for the “fitted”parameters and these are modified as the calculation proceeds so as toconverge upon a single solution for each fitted parameter. The structureparameters used may likewise be modified. Typically the structureparameters define certain aspects of the multilayered structure,including information that is known about certain layers, for examplethe number of layers, the thickness of particular layers, the partial ortotal composition of particular layers and so on. The iterative solutionprocedure may therefore be repeated a number of times for each setwhilst varying the structure parameters used in the calculation.

The analysis typically further comprises calculating a statisticaldistribution of the output fitted parameters. This analysis may beperformed for the data within each set (for example where numerousspectra are produced due to counting statistics), for results due to thedifferent starting parameters or for sets (due to the differentexperimental conditions selected for each set), or indeed a combinationof one or more of these.

Typically the method further comprises calculating a standard deviationfor each estimated fitted parameter as a measure of achievable precisionfor the analysis process. This is advantageous since one goal of themethod in a practical implementation is to achieve a predetermined levelof precision for a predetermined total measurement time.

Whilst the invention is limited to x-ray excitation using electronbeams, the invention does include proposed structure analysis processesin terms of energy dispersive apparatus (EDS) and wavelength dispersiveapparatus (WDS). Each of these may be considered as spectral data.

Since the purpose of the invention is to determine the feasibility of aproposed analysis process, the proposed process will not be feasible touse if the calculations are unable to produce meaningful results for thefitted parameters. This will be the case if the method is unable toproduce single solutions for the fitted parameters. The data (such asparameters and conditions data) which cause such failures are typicallyrecorded for later analysis. Where there is a failure to produce singlesolutions, the method preferably further comprises selecting newconditions and repeating the method using spectral data generatedaccording to the new conditions. The method therefore explores otherconditions which may produce meaningful results for the fittedparameters.

The invention therefore allows the feasibility of a proposed structureanalysis process to be investigated without the need for expensive andlengthy practical investigations. This is extremely useful in commercialstructure analysis processes, for example where products are producedcontaining multi-layered structures and automatic electron beam x-rayexcitation analysis apparatus is provided for quality control purposes.The invention therefore allows the feasibility of a particular processto be investigated, this process having certain associated conditionsand parameters, for all likely variations in the products (multi-layeredstructures) to be analysed. If a certain proposed analysis processhaving an associated set of conditions and parameters is deemed unableto converge upon a solution, then the modification of the conditionsand/or parameters according to the method can allow a different proposedanalysis process to be selected. If the desired precision cannot beachieved under any conditions, this will save wasted time and allowalternative characterisation methods to be sought.

We have further realised that it is possible to perform the method ofthe invention by considering whether it is mathematically possible tofind unique values of the unknown parameters. Even if it is possible intheory, the particular iterative solution procedure used to implementthe method may not succeed although this does provide an incentive toimprove the iterative solution procedure.

As mentioned earlier, step (ii) may comprise analysing the response ofthe predictor model to small changes in the layer thickness and/orcomposition within the structure data. The behaviour of the predictormodel may be analysed as an approximated series expansion for changesfrom the nominal values. For example the behaviour of the predictormodel may be represented as a matrix equation, wherein x-ray data outputfrom the predictor are represented as a vector of M values, whereinunknown layer thicknesses and/or compositions are represented as avector of N variables, and wherein the partial derivatives relating theoutputs to the layer thicknesses or compositions are represented as an Mby N dimension Jacobian matrix. An analysis may therefore be performedto find if there is always a unique combination of small changes tounknown layer thicknesses and concentrations that can produce anarbitrary set of changes to the nominal x-ray data. One particularapproach is that of singular value decomposition (SVD). Using such atechnique the method may further comprise calculating the conditionnumber representing the degree of solubility of the matrix equation forthe layer thicknesses or compositions. This condition number may becompared with a threshold so as to comprise a feasibility criterion.

By way of further explanation, there are many methods of findingsolutions to sets of non-linear equations and many variants of iterativesolution procedures. Some algorithms may converge successfully whereasother algorithms may fail, even though identical equations are used likeequation 1 to predict x-ray intensities Out of all these algorithms, thebest possible algorithm will only be able to find a unique solution ifthere is an appropriate relationship between the measured k-ratios andthe layer variables to be determined. If the best possible iterativealgorithm is used and equation 1 gives accurate intensities with thecorrect specimen description, then if the iterative solution is evergoing to be successful the iterative procedure must still be effectivewhen the current estimates of unknown layer variables T_(i) are veryclose to the true values T0_(i). In this neighbourhood equation 1 can belinearized by considering small differences; that is, using a firstorder Taylor series expansion, the differences (k_(i)−k0_(i)) are linearcombinations of the small differences (T_(i)−T0_(i)) where k0i are themeasured k-ratios corresponding to the correct layer variables T0_(i)and k_(i) are the predicted k-ratios for T_(i) from equation 1. Thus,the iterative procedure has to work out what combination of changes inT_(i) are necessary to produce the change from k_(i) to the give themeasured k0_(i). The effect of small changes can be determined byrepetitive forward calculations using equation 1. If all the layervariables are initially set to their correct values, then the k0_(i) canbe computed. If one of the layer variables is altered by a small amountthen running the forward calculation again will show what small changes,delta-k_(i), are produced in each of the calculated k-ratios (i.e.delta-k_(j)=k_(i)−k0_(i)), If none of the k-ratios change substantially,then there is clearly no opportunity for determining the particularlayer, variable by it's effect on k-ratios. If at least some of thek-ratios change, then the change in the layer variable produces a“fingerprint” of changes delta-k_(i) for each k-ratio. If thisfingerprint happens to coincide with the fingerprint for one of theother layer variables then the changes in k-ratios produced by apositive change in one variable could be cancelled out by a suitablenegative change in the other variable. In that case, there are aninfinite number of combinations of values for these two variables thatcould explain the observed k-ratios and therefore there would be no wayof deciding the correct values for these variables. The case where two“fingerprints” are similar is a simple example. In general, if it ispossible to add up two or more linear combinations of fingerprints toproduce a zero result. then the corresponding layer variable valuescannot be uniquely determined. Thus, by using the forward calculation toexplore the small neighbourhood of the ideal solution, it is possible todetermine if there is no possibility of solution of the inverse problem.

In the case where the problem is soluble, then in the neighbourhood ofthe correct solution it is possible to find a combination offingerprints for each layer variable that matches the observeddelta-k_(i). For example, this could be achieved by least squaresfitting in which case the necessary changes in layer variables to takethem to the correct values can be calculated as a linear sums ofdelta-k_(i). In a real experiment, the measured k_(i) will be subject toa number of measurement errors and these linear sums can be used todetermine the effect of these errors on the determined layer variables.For example, if there are random errors in k_(i), such as statisticalfluctuations, the quadrature sum used in standard “propagation oferrors” can be used whereas if there are systematic changes such as thatproduced by a change in beam current for example, the straightforwardlinear combination can be used to predict the effect on determined layervariables.

If this type of analysis is repeated for many analytical conditions,such as beam voltage, it is possible to discover all conditions wherethe problem is insoluble and for those conditions where it is soluble,establish to what extent errors in the measured k-ratios influence theaccuracy and reproducibility of determined values for unknown layervariables.

If no conditions are found where the problem is “mathematically”soluble, then any iterative solution procedure will not be able to finda unique solution. When mathematical solution is found to be feasibleand a set of optimum conditions are found, then the real iterativeprocedure can be tested for these optimum conditions by first simulatingk-ratios from equation 1 for the correct specimen structure and thenchecking that, with these k-ratios as input, the procedure converges tothe correct values T0_(i) using starting guesses that are all differentfrom T0_(i). If convergence is not achieved, then this shows that thereis room to improve the iteration solution procedure so that it canaddress the current analytical problem effectively.

There are therefore a number of different techniques that can be used toassess the feasibility of a proposed structure analysis process and itwill also be appreciated that the use of mathematical techniques such asthose described in relation to the series expansion for example may beused as an initial feasibility check after which a more detailedexplanation procedure according to one of the other techniques may beused.

In most cases it is envisaged that the steps of the method (usingappropriate models) will be performed upon a computer by the methodbeing embodied within computer software (“computer-implemented”). Somesuch models will require powerful computers, particularly Monte Carlotechniques, in order to produce results with sufficient speed. Whilstthe method may be performed upon a single computer such as that of anx-ray analysis system, it will be appreciated that different parts ofthe method could be performed upon different computers eitherindependent of one another or, more preferably, linked over a networksuch as the Internet.

BRIEF DESCRIPTION OF THE DRAWINGS

Some examples of methods according to the invention are now described,with reference to the accompanying drawings, in which:—

FIG. 1 shows the penetration of an electron beam into a multilayeredsample;

FIG. 2 shows the penetration of an electron beam having a lower beamenergy than in FIG. 1;

FIG. 3 is a schematic illustration of apparatus for performing aproposed structure analysis process;

FIG. 4 is a flow diagram illustrating a first example method accordingto the invention; and,

FIG. 5 is a flow diagram illustrating a second example method accordingto the invention.

DESCRIPTION OF EMBODIMENTS

A general overview is firstly provided according to one embodiment interms of how the invention can advantageously provide a simulatedexperimental environment for exploring the capabilities of thin filmsoftware to solve a particular analysis problem. A software model isused to generate x-ray spectral data for a proposed sample and the dataare analysed by “thin film analysis” software in order to determinewhether the software is capable of deducing the structure of the sampleby fitting certain “unknown” parameters.

Firstly a proposed sample is defined, this having the multi-layeredstructure in the form of a thin film deposited upon a substrate. Thespecification for the sample is provided in terms of the approximateelemental composition, namely a composition typical of the sample to beanalysed. This will in general be approximately the same as one of theunknowns that may be eventually analysed for real. The proposed sampleis also defined in terms of the substrate and layers and the thicknessesof these layers. A first set of conditions is chosen, such as anelectron beam energy, together with a beam current, x-ray detectorparameters and an acquisition time. A typical x-ray spectrum that wouldbe obtained from such a sample is then calculated from theory takingaccount of the characteristics of the x-ray detector and includingsuitable random number additions to simulate the effect of x-raycounting statistics. Further x-ray spectra are synthesised for otherconditions, namely each incident beam voltage and measurement conditionthat is expected to be necessary. The synthesised x-ray spectra are thenprocessed mathematically using the same algorithms that would be used onreal spectra. These algorithms are typically used to subtractbremsstrahlung background and deal with the effects of spectral peakoverlap to obtain a set of peak areas in counts and hence the peakintensities in counts per second. In addition the expected statisticalstandard deviation for each peak intensity may be calculated. The peakintensities are then converted into data suitable for input to the thinfilm analysis software program. This typically involves dividing theintensity by the value that would be obtained from a semi-infinite flatsample of pure element under the same excitation conditions. The pureelement intensity is also determined by spectrum synthesis and the ratiois typically termed the “k-ratio” for that elemental line. Thus the“spectral data” are generated which represent that which would begenerated by a sample in a real experiment.

The thin film analysis software for performing the calculation is thenconfigured by selecting which elemental lines are to be used, whichparameters of the real problem are unknown (that is thicknesses and/orcomposition values), which parameters are known and typical starting“guesses” are used for the unknown parameters to be fitted. Thetheoretical k-ratios for one set of conditions are then supplied asinput data to the thin film analysis software which is then run in anattempt to find a solution by iteration that is consistent with theinput k-ratios. If convergence is not achieved, different sets ofconditions are tried and corresponding spectra synthesised to find aconfiguration that works. When convergence is achieved, the results foreach estimated thickness and composition value are recorded.

A new set of theoretical k-ratios are then obtained. This can beachieved by repeating the whole spectrum synthesis procedure for eachcondition using a different set of random numbers to provide the effectsof x-ray counting statistics. Alternatively, the calculated standarddeviations for derived peak intensities can be used to generate suitableGaussian-distributed random numbers that are used to perturb eachk-ratio by a random amount consistent with the expected standarddeviation of the corresponding peak intensity. Again, the set ofk-ratios are used as input data to the thin film analysis software andthe results for each estimated thickness and composition are recorded.This process effectively mimics a second experiment on the sample andthe results will in general be different from the first experiment. Byrepeating the process many times (typically more than 100 times) therecorded results for each experiment show the variation in results thatwould be expected in practice when similar conditions are used. The meanand standard deviation for the results for the same parameter can thenbe calculated and provide an estimate of the precision that can beattained using a particular set of beam voltages and acquisitionconditions.

By running many simulations, it is possible to check whether a qualitycontrol procedure could fail occasionally. If so, the configuration ismodified until convergence is assured. With a fast computer, trial anderror modification of the configuration is achieved more simply andfaster than by doing live experiments on an instrument. Furthermore, theconditions can be optimised to find that set which gives the bestprecision on the results that can be achieved for a given total analysistime.

Potential measurement inaccuracy can also be taken into account in thesimulation. For example, besides the variation due to x-ray countingstatistics, the peak intensities may fluctuate from experiment toexperiment because of variations in incident electron beam current. Thelikely percentage fluctuation in beam current can be added in quadratureto the fluctuation due to counting statistics to realistically representthese random excursions.

Systematic inaccuracies may be expected from spectrum processing (seefor example, “Limitations to accuracy in extracting characteristic lineintensities from x-ray spectra”, P. J. Statham, J. Res. Natl. Inst.Stand. Technol. 107, 531-546 (2002)). X-ray spectrometers can often becalibrated to minimise these inaccuracies and for a given spectrometerand analysis problem it is often possible to estimate the worst casesystematic error that could occur on a given peak area estimated byspectrum processing. If this error value is used in place of theestimated statistical standard deviation in the above procedure torandomly perturb the input k-ratio, the spread in results gives anestimate of the inaccuracies in determined thicknesses andconcentrations that could result from errors in spectrum processing.

The invention thus provides a test bed for exploration to find afeasible set of conditions to use for real samples and gives a methodfor estimating the precision or reproducibiltiy of results caused bycounting statistics and likely causes of fluctuation such as beamcurrent. Furthermore, the test bed provides a method for estimating thelikely consequences of inaccuracies involved in spectrum processing.Inaccuracies in the theoretical calculations within the thin filmanalysis software may still give systematic errors in the estimatedthicknesses and concentrations. These systematic errors can usually beminimised by performing relative measurements using standards with knownparameters.

An overview of a physical system 1 for performing a prior art structureanalysis process of multi-layer samples (such as thin films) is shown inFIG. 3. The system comprises a scanning electron microscope (SEM) 2having an x-ray analysis system 3, this being an INCA Energy x-rayanalysis system (manufactured by Oxford Instruments Analytical Limited).The SEM has a chamber 4 containing a specimen holder 5 which can betilted. An incident beam of electrons is emitted by an electron gun 6,this being focused upon a specimen 10 held within the specimen holder.Characteristic x-rays that are emitted as a result of the electron beamare detected by a detector 11 forming part of the x-ray analysis system3. The SEM 2 includes a control computer 15 upon which software isexecuted to control the operation of the system 1. This computer cancontrol the kV used to accelerate electrons from the electron gun 6 andthus alter the energy for the focused electron beam striking thespecimen. To analyse the specimen 10, an electron beam energy and beamcurrent is selected and an x-ray spectrum is acquired for a chosenacquisition time. Element peak intensities are obtained from thespectrum using a suitable method (for example “Deconvolution andbackground subtraction by least squares fitting with prefiltering ofspectra”, P J Statham, Anal. Chem. 49, 2149-2154, 1977 incorporatedherein by reference). While the experimental conditions are stable, aknown standard is moved under the beam into the same position occupiedby the specimen 10 and a reference x-ray spectrum is obtained from thestandard. The spectrum from the standard measurement is used to obtainthe peak intensities that would be obtained from a flat sample of bulkpure element for each of the elements in the specimen to be analysed.Either a series of pure element or compound standards can be used, or asingle standard can be used and the corresponding intensities worked outby applying calculated scaling factors to the appropriate standardmeasurement (see for example the operating manual for the thin filmprogram “Stratagem” sold by SAMx, France). If necessary, the specimenand standard measurements are repeated at more incident beam energies.

A thin film analysis program (for example, “Stratagem” sold by SAMx,France) is then used to calculate the thicknesses and compositions ofthe various layers. To do this, the number of layers must be defined andany available information on substrate composition and composition ofthe various layers is supplied. Any unknown thicknesses and compositionswill be determined by the program using the measured k-ratios for theelements involved at one or more beam energies. The k-ratio for eachmeasured element is calculated and supplied as input to the thin filmprogram which then attempts to find best fit parameters to the model byiteration. If the thin film program fails to converge, an error warningis given. Otherwise, the program gives a set of estimates forthicknesses and compositions for all the unknowns in the sample.

It will be appreciated that the above analysis process involvesconsiderable experimental procedures which are costly particularly interms of the time spent in determining whether a particular set ofprocess conditions and parameters are feasible to use under all expectedcircumstances.

An example method of the invention is now described. In the invention,the SEM is not required and the method is used to discover and validatea preferred proposed method for analysis that can be used afterwards onthe SEM with a real specimen.

Referring now to FIG. 4, the method begins at step 100 in which thestructure of the multi-layered sample is defined in terms of parametersfor use in the x-ray excitation model. Typical parameters include thenumber of layers, the thickness and density of each layer, theconcentrations of each element in each layer and the concentrations inthe substrate.

Then further details for each x-ray spectrum acquisition are defined atstep 105, these relating to the experimental conditions. For examplethese include the incident beam energy for electrons (SEM kV), beamcurrent, geometry of the sample (particularly take-off-angle fordetected x-rays), total acquisition time and detector solid angle forcollection of x-rays. One or more of different conditions are specifiedup to a total of NC, using these parameters.

Next a thin film program (the model for calculating the unknown fittedparameters), this being “Stratagem” in this example, is initialisedaccording to the prior knowledge available (step 110). For each elementpresent, a choice is made of which emission series to use formeasurement (K, L or M). Where element concentrations or thicknesses anddensities are known, these can be fixed so they do not change in theiterative solution process. Some elements may be combined in fixedproportions with others and these relationships can be used to enforceconditions that help the program to find a solution. For each conditionwhere x-rays are recorded, a choice is made of which element series tomeasure to find k-ratios. Finally, “guesses” are assigned as startingparameters for the unknown thicknesses and concentrations that are to beestimated (fitted). To be a realistic test of what would happen with areal specimen, these starting parameters should be generic choicesrather than exactly the same as for the typical specimen beingsimulated.

Note that the choice of a suitable set of conditions and theinitialisation of the thin film program may be left to the skill of theoperator. Alternatively, a computer algorithm could be used to make asuitable choice taking into account the physics of electron beamscattering and x-ray generation, the structure of the sample and thenumber of unknowns to be determined.

In step 115 a suitable prediction model is used to calculate thepredicted x-ray spectrum data that would be obtained from flathomogeneous bulk samples of pure elements for the NC specifiedconditions. For electron beam excitation of a homogeneous bulk sample anaccurate theoretical model has been achieved (see “Improved X-raySpectrum Simulation for Electron Microprobe Analysis”, Peter Duncumb,Ian R. Barkshire, Peter J. Statham, Microsc. Microanal. 7, 341-355,2001). The method described in the abovementioned paper (which isincorporated herein by reference) is applied in this example. This modelcalculates the emitted spectral intensity and takes account of theefficiency of the detection system used to record the spectrum. Thus,the intensities for the selected emission series for pure bulk elementsat the specified conditions are determined. In practice, the pureelement intensities will be greater than those for the same elements inthe multilayer specimen and longer acquisition times can be used for thereference pure element data so any statistical effects on the pureelement measurements can be made negligible relative to those thateffect the measurements of the specimen.

At step 120 a model is used to calculated the predicted x-ray spectrumdata that would be obtained from the multilayer specimen for the NCspecified conditions. The model used for prediction of bulk samples canbe combined with existing models to predict intensity for multilayers onsubstrates (for example “Quantitative analysis of homogeneous orstratified microvolumes applying the model “PAP”.“, Pouchou, J. L. &Pichoir, F. (1991) In: Electron Probe Quantitation, Heinrich, K. F. J. &Newbury, D. E. (eds), Plenum Press, New York, 31-75 incorporated hereinby reference).

In the present example, a hypothetical bulk sample spectrum issynthesised using the above theoretical model for bulk samples(implemented in the “INCA Energy” product, Oxford Instruments AnalyticalLimited). The element concentrations and beam current for thishypothetical spectrum are adjusted iteratively until the peak areas inthe synthesised spectrum give the same k-ratios that are predicted bythe thin film program “Stratagem” relative to pure element spectra takenat the specified beam current. Since, for a particular element bothbremsstrahlung background intensity and peak intensity is approximatelyproportional to elemental concentration and film thickness, a simulatedbulk spectrum with the same peak areas as a real spectrum will alsoexhibit a bremsstrahlung background that is similar to that which wouldbe achieved in the real spectrum from a multi-layer specimen. Thissimilarity ensures that statistical counting effects on the precision ofbackground subtraction will be adequately modelled. Spectra aresynthesised in this way for all NC conditions at step 120.

Each channel count in a real x-ray spectrum is subject to Poissoncounting statistics. In the present example such Poisson countingstatistics are modelled by the use of computer generated random numbers.An uncorrelated sequence of numbers is thereby generated and added toall the channels in each of the NC spectra (step 125).

Each spectrum is then processed at step 130 to remove background andcorrect for peak overlaps (a suitable technique is described in“Deconvolution and background subtraction by least squares fitting withprefiltering of spectra”, P J Statham, Anal. Chem. 49, 2149-2154, 1977,incorporated herein by reference) to find the peak areas for therequired element line series.

K-ratios are required for input to the “Stratagem” thin film program.The k-ratios are calculated by ratioing the calculated intensities withrespect to those for the pure elements (step 135).

The thin film program is then executed using the input k-ratios to seeif it can find a solution by iteration for all the unknown parameters(step 140) for each of the NC conditions. If it fails to converge, thena warning is given and the operator can select a new set of conditionsand initialisation for the thin film (return to step105).

If the iterations do converge, the results are saved (step 145) and anew “instance” is created by adding a new set of random numbers to givea new set of input data for each of the NC conditions. This “instance”represents another real experiment and when enough instances have beensimulated, the overall standard deviation on the calculated results forall the instances can be determined in the analysis step 150.

An alternative approach for simulating statistical variations, accordingto a second example method, is shown in FIG. 5. Primed referencenumerals show steps analogous with FIG. 4. This involves mostlyidentical steps to those in FIG. 4 but there are two major differences.Firstly, in step 125′, the method described in “Deconvolution andbackground subtraction by least squares fitting with prefiltering ofspectra”, P J Statham, Anal. Chem. 49, 2149-2154, 1977 (incorporatedherein by reference), is used to predict the standard deviations for thepeak areas determined by spectrum processing. Secondly, these standarddeviations are used to modulate a random number generator to produceGaussian distributed values for the k-ratios with the expected relativestandard deviation (step 135′). The approach in FIG. 5 reduces theoverall amount of computation and speeds up the calculation over manyinstances but does require one set of complicated calculations topredict the effect of spectrum processing on derived peak areas. Thelikely fractional fluctuation in beam current can be added in quadratureto the fluctuation in k-ratios due to counting statistics to representthis source of systematic error. Furthermore, systematic inaccuraciesexpected from spectrum processing can be estimated (see for example,“Limitations to accuracy in extracting characteristic line intensitiesfrom x-ray spectra”, P. J. Statham, J. Res. Natl. Inst. Stand. Technol.107, 531-546 (2002) incorporated herein by reference). These can beadded as a random perturbation to the k-ratios to explore the effects ofspectrum processing errors on the results obtained by the thin filmanalysis program.

In the methods of either of FIG. 4 or 5, if the iterations do notconverge, this means that the problem cannot be solved by “inverting”the prediction of k-ratios from structure. It is possible that with adifferent set of measurements and conditions the problem could be solvedand an operator with some experience can try modifying the configurationto see if another set of instances will be successful. It is importantthat the speed of calculation is sufficiently fast to enable this “trialand error” approach to make it interactive. Alternatively, a computeralgorithm could be used to make successive changes automatically anddiscover what sets of conditions assure convergence.

Once the feasibility of solving the problem has been demonstrated, theconditions, number of measurements, acquisition times for x-ray spectraand initialisation of the thin film program can be adjusted to optimisethe achievable precision for a given total measurement time.

Although the implementation of the invention has been described usingx-ray spectra obtained with an energy-dispersive detection (EDS) system,this could equally well be achieved for measurements obtained with awavelength-dispersive detection (WDS) system where a Bragg crystalmonochromator and proportional counter detector is used to measureintensity from a specific element emission line. The key requirement isa method to simulate what would be achieved under real experimentalconditions from a bulk specimen and this has already been demonstratedfor WDS (for example, “X Ray Spectra simulation for WDS: Application toElectron Microprobe automation”, C. FOURNIER, P. F. STAUB, C. MERLET, O.DUGNE, Microsc.Microanal. 7 (Suppl. 2), p674 (2001) incorporated hereinby reference). If the WDS intensity can be predicted for a particularelement emission line on a bulk specimen, then the same technique asused for the EDS can be used to establish a hypothetical composition anda beam current value for a bulk specimen that would give the intensitiesand corresponding k-ratios that are predicted by the thin film program.In the case of WDS, the statistical calculations are considerablysimpler because the higher energy resolution lessens the chance of peakoverlap and background corrections are often negligible. Therefore, therelative standard deviation on measured k-ratios can be used in anapproach similar to FIG. 5.

The thin film program “Stratagem” uses an approximation for the depthdistribution of x-ray generation to enable a fast calculation of emittedintensities from the various layers. As the speed of computers isincreasing, it is becoming possible to use more explicit models forx-ray generation such as a Monte Carlo simulation of electron scatteringand ionisation (see for example, “The use of tracer experiments andMonte Carlo calculations in the phi(rho-z) determination fo electronprobe microanalysis”, P. Karduck and W. Rehbach, (1991) In: ElectronProbe Quantitation, Heinrich, K. F. J. & Newbury, D. E. (eds), PlenumPress, New York, 191-217 incorporated herein by reference). With such anexplicit calculation method, the intensity can be predicted directly fora multi-layered specimen by using suitable cross sections forcharacteristic and bremsstrahlung radiation (for example see R. Gauvinand E. Lifshin (2002), “On the Simulation of True EDS X-Ray Spectra”,Microscopy & Microanalysis, Vol. 8, Supp. 2, pp. 430-431, 2002,incorporated herein by reference). In this case, the spectrometerefficiency for either EDS or WDS is used to convert the calculatedemission for a given beam current into a measured x-ray intensity. Inthe first instance, the Monte Carlo simulation is run to calculateintensities for the typical sample to find the k-ratios. After theaddition of suitable perturbations representing statistical variation,an attempt is made to find a set of thicknesses and concentrations forthe unknowns that is consistent with the input k-ratios. Although theMonte Carlo simulation process is quite different to the analyticaldepth distribution modelling used in “Stratagem”, the method ofiteratively modifying the “guesses” for unknowns can be identical tothat used in “Stratagem”. With each new guess, the Monte Carlosimulation is run to predict the intensities to see if they converge ona good fit to the input k-ratios.

In the above embodiments we have described a technique in which x-rayspectral data is generated using a model and the generated data are theninserted into a structure solver. As we have demonstrated, if themeasured k-ratios are perturbed by small random amounts and a solutionattempted by iteration, then both the capability of converging to asolution and the standard deviation on the determined result can beestablished by repeated simulations. This approach requires thecapability to simulate spectra and multiple applications of thesimulation in order to determine precision.

An alternative approach can be used that avoids the need to simulatespectra and reduces the need to perform large numbers of simulations inorder to test the feasibility of the structure solver to converge for agiven set of conditions. The thin film model can always predict k-ratiosin the ‘forward’ direction as shown by equation 1 provided thicknessesand concentrations (“layer variables”) are defined for all layers. Ifthese k-ratios are provided as inputs to the structure solver and thestarting values for the unknowns are set to the values corresponding tothe hypothetical specimen, then equation 1 will predict k-ratiosIdentical to the starting values and the iteration will convergeimmediately. If just one of the k-ratios, K_(j), is incremented by asmall amount (say 1%) and the other k-ratios are unchanged, then whenthe iterative solution is attempted, the k-ratios will agree withequation 1 except for K_(j). Provided the change in K_(j) issufficiently large, then the test for convergence will fail and theiterative procedure will have to perform an iteration and make anadjustment to the unknown values. This will change the prediction ofk-ratios and may lead to further iterations. If the iterations fail toconverge, then the problem is clearly unstable. However, if they doconverge to a solution, then the change delta-T_(i) from the idealstarting value for each unknown layer variable T_(i) for a known changedelta-K_(j) in the jth k-ratio is recorded as dT_(i)/dK_(j). Thisprocedure is repeated for different K_(i). If convergence is achievedfor all K_(i) then this suggests that the computer program can deal withthis problem. If an estimate of the standard deviation, σ_(i), in themeasured K_(i) is available, and the statistical fluctuations in allK_(i) are independent, then the variance, V_(i), in the calculated layervariable T_(i) can be estimated as the sum of ((dT_(i)/dK_(j))².σ_(i) ²)for all j. Systematic errors can occur in measured K_(i). For example,if the beam current increases during the acquisition of an x-rayspectrum, then all K_(i) derived from this spectrum will be increased inthe same proportion. If an estimate of the systematic error, e_(i), inthe measure K_(i) is available, then the error in the calculatedvariable T_(i) can be estimated as the sum of ((dT_(i)/dK_(j)). e_(j))for all j. A figure of merit can be computed for each source of error.For example, in the case of statistical errors, the maximum relativestandard deviation in T_(i), that is square root of (V_(i)/T_(i) ²),gives the “worst case” relative error and a low value for this figure ofmerit would be desirable. Alternatively, the average relative error forall T_(i) or the relative error for a specific layer variable can bechosen for the figure of merit. Similar figures of merit can be computedfor errors due to systematic causes such as beam current variation.

Thus, if a typical specimen structure can be defined, then for one setof experimental conditions, in particular the beam energy, thepossibility of solving the problem can be tested and one or more figuresof merit can be computed to measure the effect of various potentialsources of error on the results. If this procedure is repeated atseveral candidate experimental conditions, then the best set ofconditions can be found that minimises the effect of one or more sourcesof error. If one source of error is likely to dominate, then theconditions that minimise the figure of merit for that error source isappropriate. Alternatively, if realistic values for, σ_(i) and e_(i) areavailable, then some combination of the related figures of merit can beused, such as the maximum of both figures of merit, to find theexperimental conditions that are optimal.

If the feasibility of achieving convergence by the structure solver isall that is required, then a further method can be used. First, the truespecimen structure is used to predict a set of k-ratios from equation 1for all the NC conditions. These k-ratios are then used as input to thestructure solver with a set of starting guesses for the unknown layervariables, T0_(j), that are all slightly different from the true values.For example, these starting guesses could all be 1% greater than thetrue values or differences could be selected using a random numbergenerator while still keeping the maximum relative difference to withina few %. The iterative structure solver is then started and it willattempt to adjust the unknown layer variables so that equation 1predicts the k-ratios supplied as input for the NC different conditions.If convergence cannot be achieved, or the output values for any of theunknown layer variables are substantially different from the true valuesthen this shows that it is not feasible to use this particular set of NCconditions for the structure analysis process so a new set of conditionsneeds to be tried.

In all the above approaches, the program that is used to find a solutionby iteration may fail because it has limitations on its iterationprocedure or uses an unsuitable algorithm. If iteration does fail, thenit is not easy for the user to decide what is necessary to be changed inorder to achieve a result. Furthermore, in order to establishfeasibility it is necessary to run the structure solver routine whichinvolves many iterations where at each iteration a full set of k-ratioshave to be calculated by equation 1.

A more efficient method of establishing feasibility involves checkingthe mathematical behaviour of equation 1. By performing two calculationsusing equation 1 using first T_(j) and then (T_(j)+delta−T_(j)) forlayer variable j, the change delta-k_(i) in k-ratio k_(i) can be used toestimate the partial derivative (∂K_(i)/∂T_(j))≈delta−k_(i)/delta−T_(j).(If only the unknown variables are to be determined, the beam voltage E₀and the known layer variables will remain fixed in equation 1) For the Mk-ratios and N unknown layer variables, the M×N matrix of partialderivatives is the “Jacobian” for the model function in equation 1 withrespect to the N unknown layer variables at a point in layer variablespace. In the small neighbourhood of this point, the first order Taylorseries expansion is thus described by the matrix equation

J×(T−T ₀)=K−K ₀  EQUATION 2

where K₀ is the vector of k-ratios predicted by equation 1 for theparticular point in layer variable space described by the particularlayer variable values T₀, J is the M×N Jacobian evaluated at T₀, T is avector of N layer variables, and K is the vector of M k-ratios predictedby equation 1 for layer variables T. At each step in the iterativeprocedure to solve equation 1, To will be an estimate of the unknownlayer variables and K₀ will be the predicted k-ratios for this estimatefrom equation 1. If the iterative procedure manages to get K₀ close tothe measured k-ratios K^(m) then the best estimate of T will be given bythe solution of the equations shown in matrix form as

J×(T−T ₀)=K ^(m) −K ₀  EQUATION 3

If M>N there are more equations than unknowns and there is no uniquesolution in general. However, a “best fit” solution that minimiseslength of the residual vector,

|J×(T−T ₀)−(K ^(m) −K ₀)|

can be found using singular value decomposition, SVD (see NumericalRecipes). SVD is used to factorise the M×N matrix J thus:

J=UWV^(T)

and then the best fit solution for T is given by

T−T ₀ =[VW ⁻¹ U ^(T)](K ^(m) −K ₀)  EQUATION 4

or

T−T ₀ =P×(K ^(m) −K ₀)  EQUATION 5

where P is sometimes called the “pseudo-inverse” of J. This procedureworks provided there are at least N independent columns in the Jacobian.If there is a linear relationship between one or more columns, thatreduces the number of independent columns. With less than N independentcolumns, it is no longer possible to find one unique best fit solutionso the problem becomes insoluble. Linear relationships between columnstherefore make the matrix J “ill conditioned” (Numerical Recipes). Ifthe elements of the diagonal matrix W are taken in descending order,then the ratio of the Nth largest element to the largest element will bethe “inverse condition number” (ICN) the reciprocal of the “conditionnumber”. If ICN=0, the Jacobian is “singular” and no solution ispossible whereas with ICN=1, the matrix is perfectly conditioned. If theproblem is ill conditioned then the results will be sensitive to smallerrors in computation or in the measured k-ratios. If ICN exceeds somethreshold, say 0.1, then the iteration has a chance of convergingsuccessfully. If equation 4 cannot be solved when the iteration is closeto the correct solution, then there is no way of solving equation 1 ingeneral. Therefore, by evaluating ICN for different values of beamvoltage, it is possible to find whether there is any beam voltage forwhich the problem can be solved by x-ray analysis using k-ratios.

The same principle can be applied if measurements of k-ratios are takenat more than one beam energy. For each E₀ the partial derivatives of themeasured k-ratios are evaluated using the appropriate E₀ in equation 1and added to the J matrix as additional rows. ICN is then evaluated ateach combination of beam energies to find a combination where theproblem is soluble. A multi-dimensional search will find at whatcombinations of beam energies the problem is soluble.

If there is no condition where equation 4 is soluble, then the only wayto solve the problem is to remove the linear relationships betweencolumns that are causing J to be ill conditioned. The layer variablesinvolved can be identified using the SVD results (see for example, A. K.Bandyopadhyay et al, Int. J. Numer. Model. 2005; 18:413-427). Onceidentified, it may be possible to fix one or more of the unknownvariables rather than leave them to be determined. The problem may thenbe mathematically soluble although the solution will now depend on thevalues chosen for the now fixed variables.

For conditions where equation 4 is soluble, then any fluctuations inK^(m) will result in fluctuations in T as determined by equation 4. Whenthe fluctuations in each K^(m) _(j) are independent normal randomdeviates with standard deviation σ_(j), the standard deviations for eachlayer variable T_(i) in T is the square root of the sum of (P_(ij)²·σ_(j) ²). for j=1 to M, where P_(ij) is the matrix element in the N×Mmatrix P. This is a suitable method for finding the effect of errors dueto counting statistics in the measured k-ratios When the fluctuations ineach K^(m) _(j) are correlated, as for example when beam currentfluctuates during the measurement, then the error in T_(i) will be thelinear sum of P_(ij). d_(j) for j=1 to M, where d_(j) is the change inK^(m) _(j) produced by the change in beam current. A similar calculationcan be done to estimate the effect of systematic errors in spectrumprocessing; in this case, d_(j) would be the error in K^(m) _(j)involved in estimating the area of the peak in the x-ray spectrum. Afigure of merit can be calculated for each source of error, for example,this could be the maximum relative error in TI or the mean square errorin T_(i). By plotting this figure of merit at each value of beamvoltage, or at each combination of beam voltages where more than onecondition is used, it is possible to decide on what condition or set ofNC conditions that produces the best figure of merit. This effectivelyprovides an expert system to help the inexperienced user to establishwhether x-ray analysis can be used to solve the application problem andto find the best analytical conditions.

The invention finds particular application in electron beam excitedx-ray analysis for layers between 1 and 100 nm in thickness, as occursin semiconductor processes (metal and dielectric layers), magnetic thinfilms and catalytic chemistry for example.

1. A method of determining the feasibility of a proposed structureanalysis process, said process comprising electron beam excitation ofx-rays from a multi-layered structure in order to determine thestructure and composition of the layers, the method comprising:— i)generating predicted x-ray data representing the x-ray excitationresponse of the multi-layered structure according to a first set of oneor more process conditions, using structure data defining the structureand composition of the layers; ii) analysing the effect upon the x-raydata of changes to the structure data in accordance with one or morepredetermined feasibility criteria, wherein the said one or morepredetermined feasibility criteria define whether or not it is possiblefor a structure solver, when given the x-ray data, to calculate outputstructure data defining the structure and composition of themulti-layered structure for x-ray data generated according to the firstset of process conditions: and iii) automatically repeating steps (i)and (ii) using different process conditions in place of the first set ofprocess conditions so as to determine under which process conditions, ifany, the proposed structure analysis can be used to determine thestructure.
 2. A method according to claim 1, wherein the x-ray data aregenerated using a predictor model as a function of the elementalcomposition and layer thickness of each layer in the multi-layeredstructure.
 3. A method according to claim 2, wherein a predictor modelis used to generate x-ray data representing the characteristic x-rayintensity response for a particular element within the multilayeredstructure.
 4. A method according to claim 2, wherein step (ii) comprisesanalysing the response of the predictor model to small changes in thelayer thickness and/or composition within the structure data.
 5. Amethod according to claim 4, wherein the predictor model is analysed asan approximated series expansion.
 6. A method according to claim 5,wherein the behaviour of the predictor model is represented as a matrixequation, wherein x-ray data output from the predictor are representedas a vector of M values, wherein unknown layer thicknesses and/orcompositions are represented as a vector of N variables, and wherein thepartial derivatives relating the outputs to the layer thicknesses orcompositions are represented as an M by N dimension Jacobian matrix. 7.A method according to claim 6, wherein the analysis is performed usingan iterative technique to minimise the resultant residual vector.
 8. Amethod according to claim 7, further comprising calculating a conditionnumber representing the degree of solubility of the matrix equation forthe layer thicknesses or compositions.
 9. A method according to claim 8,wherein the condition number is compared with a threshold comprising afeasibility criterion.
 10. A method according to claim 1, wherein instep (i) the structure data is defined as nominal structure datacomprising compositions and layer thicknesses for each layer, thenominal structure data producing corresponding nominal x-ray data andwherein, in step (ii), the structure data is modified and input,together with the nominal x-ray data, into the structure solver adaptedto iteratively calculate the composition and thickness of each layer ofthe multi-layer structure as output structure data using the input x-raydata and structure data.
 11. A method according to claim 10, wherein,during operation, the structure solver calculates x-ray data for themodified structure data and compares the modified x-ray data with thenominal x-ray data.
 12. A method according to claim 11, wherein theeffects of modifications to the structure data are analysed by comparingthe x-ray data generated for the modifications in the structure datawith the nominal x-ray data and comparing the results of the comparisonwith a feasibility criterion.
 13. A method according to claim 12,wherein the feasibility criterion is met if a unique set of outputstructure data is found which produces corresponding predicted x-raydata that is substantially identical to the nominal x-ray data and issubstantially independent of the modifications applied to the structuredata.
 14. A method according to claim 1, wherein in step (i) thestructure data is defined as nominal structure data in terms ofcompositions and layer thicknesses for each layer, the nominal structuredata producing corresponding nominal x-ray data and wherein, in step(ii), the x-ray data is modified and input, together with the nominalstructure data, into a structure solver adapted to iteratively calculatethe composition and thickness of each layer of the multi-layer structureusing the input x-ray data and structure data, and to produce outputstructure data.
 15. A method according to claim 14, wherein the effectsof modifications to the x-ray data are analysed by comparing the outputstructure data with the nominal structure data in accordance with afeasibility criterion.
 16. A method according to claim 15, wherein thefeasibility criterion is met if, for every modification to the inputx-ray data, the structure solver produces a unique set of outputstructure data having corresponding x-ray data that is substantiallyidentical to the nominal x-ray data.
 17. A method according to claim 1,wherein, using a Monte Carlo method, changes to nominal x-ray datagenerated from nominal structure data are produced by applyingstatistical distributions to the nominal x-ray data so as to produce aplurality of sets of x-ray data having a collective statisticaldistribution equivalent to that expected from performing the x-rayexcitation experimentally.
 18. A method according to claim 17, whereinin step (ii) each set of x-ray data is entered, together with thenominal structure data into an iterative structure solver for generatingoutput structure data.
 19. A method according to claim 18, wherein theprocess is deemed feasible if, for every modification to the x-ray datathe structure solver produces a unique set of output structure datahaving corresponding x-ray data that is substantially identical to thenominal x-ray data
 20. A method according to claim 1, wherein step (i)comprises generating one or more sets of predicted spectral data, eachset representing the x-ray excitation response of the structureaccording to a respective one of the said process conditions and whereinstep (ii) comprises calculating output structure data for each set ofprocess conditions, using each generated set of spectral data andnominal structure data.
 21. A method according to claim 20, furthercomprising, for each set of process conditions, repeating step (i) anumber of times so as to simulate the effects of Poisson countingstatistics within each spectral data set by adding random numbers to thespectral data.
 22. A method according to claim 20, wherein step (i)further comprises predicting a statistical distribution of x-ray peakareas due to Poisson counting statistics; and applying the statisticaldistribution to the spectral data.
 23. A method according to a claim 1,further comprising identifying sources of error within the analysis andassigning a figure of merit to the sensitivity of the analysis processto each source of error.
 24. A method according to claim 23, furthercomprising repeating the method for each of a number of differentprocess conditions in step (iii) and selecting a set of processconditions in which the figure of merit is minimised or is below apredetermined threshold.
 25. A method according to claim 1, wherein eachprocess condition comprises a different electron beam energy and/or adifferent detector geometry.
 26. A method according to claim 1, whereinsets of x-ray data are generated for different processing conditionswhich represent fluctuations in the electron beam current.
 27. A methodaccording to claim 1, wherein the process conditions represent processvariations associated with the use of predetermined apparatus forperforming the electron beam excitation.
 28. A method according to claim1, wherein the x-ray data are in the form of k-ratios.
 29. A methodaccording to claim 1, wherein initial values for the composition andstructure of the layers in the structure data are selected based uponknown values or user inputted values.
 30. A method according to claim29, where a number of values for the composition and/or structure of thelayers are fixed as a constant during the method.
 31. A method accordingto claim 1 further comprises calculating a standard deviation for one ormore values of the output structure data as a measure of achievableprecision.
 32. A method according to claim 1, wherein x-ray data aregenerated so as to represent data produced by an energy dispersive (EDS)or wavelength dispersive (WDS) system.
 33. A method according to claim1, wherein step (i) is performed using a computer software model of aphysical electron beam x-ray analysis system.
 34. A computer programproduct comprising computer program code means adapted to perform themethod of any of the preceding claims, when executed upon a computer.35. A computer program product according to claim 34, embodied upon acomputer readable medium.